1. Field of the Invention
The present invention relates to multiprocessing systems. More particularly, the invention concerns a multiprocessing system in which hierarchically superior configuration managers maintain various reference parameters that are selectively copied by subordinate managed units to form local operating parameters that subsequently guide the operation of these managed units. The invention includes a comparative technique for tracking updates to the reference parameters, and synchronizing each local operating parameter counterpart accordingly.
2. Description of the Related Art
In different forms, multiprocessing systems are in widespread use today. As one example, multiprocessing systems include "supercomputers" and other similar machines that utilize many separate high-speed processors. This arrangement is popular because, collectively, the processors provide a tremendously powerful computing engine. Multiprocessing systems also include "distributed processing systems," which use typically multiple physically distinct computing machines to cooperatively perform a task. With this arrangement a computing task that is too intensive for any one machine can be spread out and processed in smaller parts by many different machines. In addition to these examples, multiprocessing systems can include a hybrid of the two, or a variety of other arrangements with multiple computers, microprocessors, application program instances, program threads, or other processing elements.
In one popular example of distributed processing system, many servers are networked to provide a data storage system that provides users with many sophisticated data management capabilities. This arrangement may be called a distributed storage system; examples of this approach may be found in various known networks implementing the ADSTAR.TM. Distributed Storage Manager (ADSM).TM. software of IBM. Although this and other similar systems constitute a significant advance and even enjoy widespread commercial success today, IBM continually seeks to improve the performance and efficiency of their multiprocessing systems. One area of focus concerns possible improvements to the ease and efficiency of configuring members of such multiprocessing systems.
Particularly, one drawback of the known arrangements is the time needed to individually configure each member of the multiprocessing system to operate as desired. In a system of networked servers, for example, configuration may involve a system administrator executing various configuration commands at a number of different networked servers to initially configure the servers, and thereby establish the servers' operating characteristics. In many cases, this is done by the system administrator individually logging-in to each desired server and then executing a command. In more advanced systems, the system administrator may remotely log-in to desired servers remotely via another, nearby server. In either case, when many different servers; are involved, there is a significant time penalty, since the administrator must take steps to execute each configuration command at the desired server. Moreover, this time penalty can arise repeatedly, since the same steps are required to reconfigure a server due to any updated operating requirements.
This time inefficiency presents a number of problems. First, it burdens the system administrator with work, making the system more costly to operate. As another limitation, the manual configuration and reconfiguration technique can be too error prone for some applications. In some cases, for example, many storage servers may be configured identically and distributed throughout a large office, for reasons of performance and scalability. In this situation, it is desirable to maintain the configuration of these servers in lock step, and thus all configuration changes must be universally applied to all servers. However, this is difficult and vulnerable to error due to the lengthy and repetitive entry of configuration commands at each server. Consequently, the known techniques for configuring members of a distributed processing system are not completely adequate for some applications due to certain unsolved problems.